﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NSCore
{

    /// <summary>
    /// 提供一个公共的算法集合基础
    /// </summary>
    public class MathFormula
    {

        public MathFormula()
        {

 

        }



        #region 属性


        IADiv _aDiv;

        internal IADiv ADiv
        {
            get { return _aDiv; }
            set { _aDiv = value; }
        }

        IABar _aBar;

        internal IABar ABar
        {
            get { return _aBar; }
            set { _aBar = value; }
        }


        IAAtm _aAtm;

        internal IAAtm AAtm
        {
            get { return _aAtm; }
            set { _aAtm = value; }
        }


        IAGr _aGr;

        internal IAGr AGr
        {
            get { return _aGr; }
            set { _aGr = value; }
        }


        #endregion


        /// <summary>
        /// 计算单一点源，单一接受点下，公共配置参数下，所有衰减情况
        /// 
        /// </summary>
        public double Compute(MathReceptor receptor,MathPS ps)
        {
           



            return this._aDiv.Compute(receptor,ps) + this._aAtm.Compute() + this._aBar.Compute(receptor, ps);




        }



    }
}
